Resumo das atividades desenvolvidas
Introdução
O sexto módulo do curso de Engenharia da Computação do Inteli tem o objetivo de ensinar aos alunos robótica móvel e visão computacional. Em parceria com a Atvos, uma empresa do ramo de bioenergia, surgiu um desafio que se encaixa no escopo do módulo: desenvolver um robô capaz de identificar sujeiras nos tubos do reboiler utilizando visão computacional. O reboiler é uma peça utilizada para aquecer o líquido que sai após a moagem da cana e seguir todas as etapas do processo na geração de bioenergia.
Após um entendimento mais profundo do problema e uma entrevista com os responsáveis técnicos da Atvos, constatou-se que os reboilers são fundamentais para o funcionamento da fábrica, e a limpeza dos mesmos é feita semanalmente. Dessa forma, o grupo pensou em desenvolver um robô teleoperado que ficaria funcionando dentro do reboiler, coletando a temperatura interna e utilizando um sistema de visão computacional capaz de identificar objetos estranhos dentro do reboiler.
Entendimento do problema
O primeiro passo para desenvolver um software é entender quem são os usuários e quais são suas necessidades. Além disso, é preciso compreender como a Atvos está posicionada no mercado, quais são os riscos do projeto e realizar uma análise de viabilidade financeira.
Assim, durante a primeira sprint foram desenvolvidos os artefatos de análise de risco, bussiness model canvas, personas, requisitos do sistema e arquitetura da informação. Cada um desses artefatos tem o objetivo de entender melhor o problema, identificar quem vai utilizar a solução e detalhar como o grupo pensou em resolver o problema.
Com a primeira sprint concluída, já é possível avançar para o desenvolvimento do projeto. Agora está claro para o grupo quem é o usuário da solução, qual foi o fluxo da solução imaginado e como as partes se encaixam para gerar uma solução que faça sentido no final.
Soluções desenvolvidas
O processo de desenvolvimento de software é iterativo, permitindo mudanças incrementais e a flexibilidade de pivotar conforme as demandas do parceiro e um melhor entendimento do problema. Além disso, é possível ir melhorando cada componente individual do projeto ao longo das sprints.
Desta forma, durante a segunda sprint a ênfase do grupo foi desenvolver um prótotipo de interface, atualizar a arquitetura com base em um melhor entendimento do projeto e aprender a utilizar o ecosistema do robô o ROS.
O sistema de utilização do robô que foi desenvolvido durante esta etapa do projeto é um belo exemplo de como o desenvolvimento de software é dinâmico. O sistema de controle por CLI só serviu como base para uma implementação futura direto no frontend.
Já na terceira sprint o grupo teve muitas tarefas para realizar. Foi feito um melhor entendimento das finanças do projeto. Assim, foi desenvolvido uma análise financeira tendo em vista tanto os custos envolvidos em criar uma prova de conceito do zero e também os custos de implementar o robô em produção.
Durante a terceira sprint foi dado o início no desenvolvimento do frontend e backend. Além disso, nessa sprint o grupo já foi capaz de conectar uma câmera ao robô,realizar a operação do mesmo pelo frontend do projeto, implementação de um sistema de emergência e detecção de objetos que possam impedir a movimentação do robô. O trabalho pode ser conferido no seguinte link
Na quarta sprint, o objetivo principal era implementar um modelo de visão computacional que fosse capaz de ajudar o operador do robô a detectar objetos estranhos dentro do reboiler e realizar testes com usuários reais.
Além disso, outra parte importante do projeto foi a integração do robô com o sensor de temperatura, visto que este é primordial para a geração de dados do projeto e entender como está a situação dentro do reboiler.
Na quinta sprint o objetivo é finalizar o projeto e ajeitar alguns detalhes que faltam para uma entrega bem feita.
Na lista abaixo é possível clicar e ter acesso a versão final do projeto de cada uma das partes que o compõem.
Portanto, é possível perceber que ao longo das sprints muitas coisas foram mudando e se adaptando para que, no final, a entrega do projeto esteja funcionando de acordo com as especificações do parceiro.
Conclusões
Durante as últimas 10 semanas, o grupo Cannabot atuou no desenvolvimento de um robô teleoperado para a medição de temperatura e detecção de anomalias dentro de um reboiler, em parceria com a Atvos.
No vídeo abaixo é possível conferir uma demonstração do robô em funcionamento na sua versão mais atual.
Além disso, foi criada uma seção de próximos passos, pensada para os funcionários da Atvos que irão continuar o desenvolvimento da solução. Esta seção contém sugestões de features que podem ser implementadas, mas que não fizeram parte do escopo inicial ou não houve tempo suficiente para implementação.